SMAHR02900_유방암판정[공단건진].xrw 46 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMAHR01000.xrw
  4. * 설 명 : 검사결과관리[일반건진]
  5. * 설 계 자 : 김호익
  6. * 작 성 자 : 김호익
  7. * 작 성 일 : 2007.07.13
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  12. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  13. <xhtml:head>
  14. <xhtml:title>Untitle</xhtml:title>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <acptinfo>
  20. <item>
  21. <pid/>
  22. <hngnm/>
  23. <rgstno1/>
  24. <rgstno2/>
  25. <sex/>
  26. <age/>
  27. <cmpycd/>
  28. <cmpynm/>
  29. <pkgcd/>
  30. <pkgnm/>
  31. <schlgrde/>
  32. <clsid/>
  33. <stuid/>
  34. <plceflag/>
  35. <orddd/>
  36. <judgdd/>
  37. <judgdrid/>
  38. <drnm/>
  39. <reexamfg/>
  40. </item>
  41. <rsltlst>
  42. <item>
  43. <prcpdd/>
  44. <execprcpuniqno/>
  45. <prcpno/>
  46. <testcd/>
  47. <testnm/>
  48. <testrsltcnts>
  49. </testrsltcnts>
  50. <outtestrsltcnts/>
  51. <rsltunit/>
  52. <rsltflag/>
  53. <remcnts/>
  54. <assorsltcnts/>
  55. <judgcd/>
  56. <judgrsltcnts/>
  57. <inptflag/>
  58. <choirslt>
  59. <item/>
  60. </choirslt>
  61. <judgmark/>
  62. <refh/>
  63. <refl/>
  64. </item>
  65. </rsltlst>
  66. <rsltlst2>
  67. <item>
  68. <prcpdd/>
  69. <execprcpuniqno/>
  70. <prcpno/>
  71. <testcd/>
  72. <testnm/>
  73. <testrsltcnts>
  74. </testrsltcnts>
  75. <outtestrsltcnts/>
  76. <rsltunit/>
  77. <rsltflag/>
  78. <remcnts/>
  79. <assorsltcnts/>
  80. <judgcd/>
  81. <judgrsltcnts/>
  82. <inptflag/>
  83. <choirslt>
  84. <item/>
  85. </choirslt>
  86. <judgmark/>
  87. <refh/>
  88. <refl/>
  89. </item>
  90. </rsltlst2>
  91. <judginfo>
  92. <mamcncrjudg>
  93. <judgdd/>
  94. <judgdrid/>
  95. <mamcncrdtbtqty/>
  96. <mamcncrreadcmt1/>
  97. <mamcncrsickpos1rght/>
  98. <mamcncrsickpos1rghtrem/>
  99. <mamcncrsickpos1left/>
  100. <mamcncrsickpos1leftrem/>
  101. <mamcncrreadcmt2/>
  102. <mamcncrsickpos2rght/>
  103. <mamcncrsickpos2rghtrem/>
  104. <mamcncrsickpos2left/>
  105. <mamcncrsickpos2leftrem/>
  106. <mamcncrreadcmt3/>
  107. <mamcncrsickpos3rght/>
  108. <mamcncrsickpos3rghtrem/>
  109. <mamcncrsickpos3left/>
  110. <mamcncrsickpos3leftrem/>
  111. <mamcncrreadcmt4/>
  112. <judgflag/>
  113. <oldmamcncrpatyn/>
  114. <judgexamcnts/>
  115. </mamcncrjudg>
  116. <specjudg/>
  117. <genrjudg/>
  118. </judginfo>
  119. <inqrlst>
  120. <item>
  121. <inqrcd/>
  122. <inqrnm/>
  123. <answcd/>
  124. <answcnts/>
  125. <remcnts/>
  126. <answflag/>
  127. <inptflag/>
  128. <inqrflag/>
  129. </item>
  130. </inqrlst>
  131. </acptinfo>
  132. <tempinfo>
  133. <rslttext>
  134. <rsltcnts/>
  135. <rslt_idx/>
  136. <rslt_col/>
  137. </rslttext>
  138. <anslst>
  139. <anslst>
  140. <item>
  141. <answcd/>
  142. <answcnts/>
  143. <answcnts/>
  144. <reminptyn/>
  145. </item>
  146. </anslst>
  147. </anslst>
  148. <choilst>
  149. <item3>
  150. <sel/>
  151. <rsltcd/>
  152. <rsltnm/>
  153. </item3>
  154. <item4>
  155. <sel/>
  156. <rsltcd/>
  157. <rsltnm/>
  158. </item4>
  159. </choilst>
  160. <answcd/>
  161. <assorsltlst>
  162. <itemasso>
  163. <sel/>
  164. <rsltcd/>
  165. <rsltnm/>
  166. </itemasso>
  167. </assorsltlst>
  168. </tempinfo>
  169. </main>
  170. </root>
  171. </instance>
  172. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  173. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  174. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  175. <script type="javascript" src="../../../com/commonweb/js/utilHelper.js"/>
  176. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  177. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  178. <script type="javascript" src="../../../ast/healexamweb/js/AHA001.js"/>
  179. <script type="javascript" src="../../../com/signweb/js/ZES001.js"/>
  180. <submission id="TXAHR01002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" replace="instance" resultref="/root/hidden"/>
  181. <submission id="TXAHB02402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" replace="instance" resultref="/root/temp"/>
  182. <submission id="TRAHR01004" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/acptinfo/judginfo"/>
  183. <submission id="TXAHR02501" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" replace="instance" resultref="/root/hidden"/>
  184. <submission id="TXAHR02901" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" replace="instance" resultref="/root/hidden"/>
  185. <submission id="TRAHR02901" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/acptinfo/judginfo"/>
  186. </model>
  187. <script type="javascript">
  188. <![CDATA[
  189. var m_vHealexamflag = "G";
  190. function fViewNum(){
  191. window.parent.javascript.vidx = "1";
  192. }
  193. /**
  194. * 소견 및 조치내용 가져오기
  195. * 소견및 조치내용은 종합판정문구 관리에서 건진구분 - 일반으로 관리.
  196. * vEditObj : 선택한 판정내용이 입력될 입력컨트롤명
  197. * SPAHR00300_PARAM1: 다중선택여부(Y/N)
  198. * SPAHR00300_PARAM2: 목적노드Set
  199. * SPAHR00300_PARAM3: 종합판정문구코드 목적노드
  200. * SPAHR00300_PARAM4: 종합판정문구내용 목적노드
  201. * SPAHR00300_PARAM5: 종합판정문구검색코드
  202. * SPAHR00300_PARAM6: 종합판정문구검색내용
  203. * SPAHR00300_PARAM7: 건진구분
  204. */
  205. function fGetJudgExmpCnts(vEditObj, jCode){
  206. if( vEditObj == null ) return ;
  207. model.makeNode("/root/temp/judgexaminfo");
  208. setParameter("SPAHR00300_PARAM1", "Y");
  209. setParameter("SPAHR00300_PARAM2", "/root/temp/judgexaminfo");
  210. setParameter("SPAHR00300_PARAM7", fGetHealExamFlag() );
  211. setParameter("SPAHR00300_PARAM8", jCode );
  212. modal("SPAHR00300", 100, 100, "SPAHR00300");
  213. if( model.getValue("/root/temp/SPAHR00300/okflag") != "ok" ) return ;
  214. var vNodeList = instance1.selectNodes("/root/temp/judgexaminfo/list");
  215. if( vNodeList == null ) reutrn ;
  216. var vJudgCnts = model.getValue( vEditObj.attribute("ref") );
  217. for( var i = 0 ; i < vNodeList.length ; i++){
  218. vJudgCnts += "- "+vNodeList.item(i).judghangcnts.text;
  219. }
  220. model.setValue( vEditObj.attribute("ref") , vJudgCnts );
  221. vEditObj.refresh();
  222. }
  223. function fCheckExamInfo(){
  224. var idx = window.parent.grd_acptlst.row;
  225. if( idx < 1) {
  226. //messageBox("수진자를 ", "C002");
  227. return false;
  228. }
  229. model.copyNode("/root/main/acptinfo/item", window.parent.grd_acptlst.nodeset + "[" + idx + "]");
  230. //결과내역가져오기
  231. var sNode = window.parent.grd_acptlst.nodeset + "[" + idx + "]/";
  232. var rsrvdd = window.parent.model.getValue(sNode + "rsrvdd");
  233. var rsrvno = window.parent.model.getValue(sNode + "rsrvno");
  234. var pid = window.parent.model.getValue(sNode + "pid");
  235. var orddd = window.parent.model.getValue(sNode + "orddd");
  236. var cretno = window.parent.model.getValue(sNode + "cretno");
  237. var pkgcd = window.parent.model.getValue(sNode + "pkgcd");
  238. if( (pid == "" ) || (orddd=="") || (cretno == "") || (rsrvdd == "") || (rsrvno == "") ){
  239. messageBox("유효하지 않은 데이터 입니다!", "E999");
  240. return false;
  241. }
  242. model.setValue("/root/send/srchrsrvdd" , rsrvdd );
  243. model.setValue("/root/send/srchrsrvno" , rsrvno );
  244. model.setValue("/root/send/srchpid" , pid );
  245. model.setValue("/root/send/srchorddd" , orddd );
  246. model.setValue("/root/send/srchcretno" , cretno );
  247. model.setValue("/root/send/srchhealexamflag" , fGetHealExamFlag() );
  248. model.setValue("/root/send/srchinstcd", getUserInfo("dutplceinstcd") );
  249. //model.setValue("/root/send/srchpkgcd" , pkgcd);
  250. }
  251. /**
  252. *건진내역별 상세내역가져오기( 판정내역조회)
  253. *건진구분/건진일자/검사실/환자id/단체코드/패키지코드별 조회
  254. */
  255. function fGetJudgInfo( ){
  256. if( fCheckExamInfo() == false ) return ;
  257. openLoadingBar("판정정보 ") ;//처리중 화면을 오픈한다.
  258. model.makeValue("root/send/srchhealexamflag","G");
  259. submit("TRAHR02901") ;
  260. // 특정값에 따라 Disabled 여부 결정
  261. fDisabledChk();
  262. closeLoadingBar() ;//처리중 화면을 close한다.
  263. }
  264. /**===================================================================================
  265. @desc : 공통 저장정보관련 check
  266. *접수정보 : 건진구분/건진상세구분/예약일자/예약번호/등록번호/진료일자
  267. *저장구분 : I=> 문진만, R=>결과만, J1 => 1차판정만 ...
  268. =====================================================================================*/
  269. function fCheckSaveInfo(){
  270. var idx = opener.grd_acptlst.row;
  271. if( idx < 1 ) {
  272. return false;
  273. }
  274. if( m_vHealexamflag == "" ) {
  275. messageBox("업무구분이 존재하지 않습니다.", "E999");
  276. return false;
  277. }
  278. var vAcptNode = opener.grd_acptlst.nodeset + "[" + idx;
  279. model.removenode("/root/send/save");
  280. model.refresh();
  281. var idx = window.parent.grd_acptlst.row;
  282. if( idx < 1) {
  283. //messageBox("수진자를 ", "C002");
  284. return false;
  285. }
  286. //결과내역가져오기
  287. var sNode = window.parent.grd_acptlst.nodeset + "[" + idx + "]/";
  288. var rsrvdd = window.parent.model.getValue(sNode + "rsrvdd");
  289. var rsrvno = window.parent.model.getValue(sNode + "rsrvno");
  290. var pid = window.parent.model.getValue(sNode + "pid");
  291. var orddd = window.parent.model.getValue(sNode + "orddd");
  292. var cretno = window.parent.model.getValue(sNode + "cretno");
  293. var pkgcd = window.parent.model.getValue(sNode + "pkgcd");
  294. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/healexamflag" , m_vHealexamflag );
  295. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/healexamdetlflag" , fGetHealExamFlag() );
  296. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/rsrvdd" , rsrvdd );
  297. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/rsrvno" , rsrvno );
  298. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/pid" , pid );
  299. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/orddd" , orddd );
  300. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/cretno" , cretno );
  301. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/pkgcd" , pkgcd );
  302. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/sex" , model.getValue("/root/main/acptinfo/item/sex") );
  303. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/age" , model.getValue("root/main/acptinfo/item/age") );
  304. model.makeValue("/root/main/acptinfo/judginfo/mamcncrjudg/judgcd" , "M");
  305. return true ;
  306. }
  307. /*===================================================================================
  308. ** 판정입력구분
  309. *1 - 1차 + 구강
  310. *2 - 2차
  311. *S - 특수건진
  312. *B - 혈액정밀
  313. *C - 암건진
  314. ===================================================================================*/
  315. function fGetJudgInptFlag() {
  316. var judg_idx = swt_judg.selectedIndex ;
  317. var ret = "1" ;
  318. switch ( judg_idx ) {
  319. case 0:
  320. ret = "1" ;
  321. break;
  322. case 1:
  323. ret = "2" ;
  324. break;
  325. case 2:
  326. ret = "1" ;
  327. break;
  328. case 3:
  329. ret = "S" ;
  330. break;
  331. case 4:
  332. ret = "B" ;
  333. break;
  334. case 5:
  335. ret = "C" ;
  336. break;
  337. default:
  338. ret = "1" ;
  339. break;
  340. }
  341. return ret;
  342. }
  343. /**===================================================================================
  344. @desc : 판정입력
  345. *접수정보 : 건진구분/건진상세구분/예약일자/예약번호/등록번호/진료일자
  346. *판정내역 :
  347. @param :bCheckSave => true이면 저장기본정보 check.
  348. 전체저장시는 저장기본정보를 check할 필요가 없으므로...pass하도록...하기위해.
  349. =====================================================================================*/
  350. function fSaveJudg( bCheckSave ){
  351. var ret = false;
  352. var signedData = "";
  353. if( bCheckSave == true ){
  354. if( !fCheckSaveInfo() ) return ret ;
  355. }
  356. //model.setValue("/root/send/save/judginptflag", "L" );
  357. if( model.getValue( cmb_mamcncjudgdrid.attribute("ref") ) == "" ) {
  358. messageBox("판정의를 ", "C001");
  359. return ret;
  360. }
  361. model.makeNode("/root/send/save/savejudg");
  362. model.resetInstanceNode("/root/send/save/savejudg");
  363. model.copyNode("/root/send/save/savejudg", "/root/main/acptinfo/judginfo/mamcncrjudg");
  364. var mamcncr_judg = getNodeListCSV(instance1.selectNodes("/root/main/acptinfo/judginfo/mamcncrjudg"));
  365. // 인증저장만 콜한다. 인증데이터 저장은 하지 않음
  366. /************************************************************************************************************
  367. 2010.04.27. 여의도 성모병원 산업의학센터 정은덕 선생님 요청으로 인증저장 주석처리함.
  368. *************************************************************************************************************/
  369. //signedData = zesfSignData( mamcncr_judg , getUserId(), true );
  370. //if(signedData == null || signedData == "") return;
  371. openLoadingBar("판정 저장 중입니다..") ;//처리중 화면을 오픈한다.
  372. ret = submit("TXAHR02901");
  373. closeLoadingBar() ;//처리중 화면을 close한다.
  374. //정상적 저장 시 판정내역 재 조회
  375. if(ret == true){
  376. fGetJudgInfo();
  377. }
  378. return ret;
  379. }
  380. /**===================================================================================
  381. @desc : 공통 저장정보관련 초기화
  382. =====================================================================================*/
  383. function fInitSaveData(){
  384. model.resetInstanceNode("/root/send/save");
  385. }
  386. function fInitDasplay() {
  387. //1차건진 판정코드
  388. model.copyNode("/root",opener.root);//parent
  389. nodenumber = 0;
  390. fCtrlSize();
  391. fSetGridInitState(grd_rsltlst);
  392. btn_fstjudg.selected = true;
  393. model.toggle("case_first");
  394. grd_rsltlst.clearStatus();
  395. model.refresh();
  396. // 특정값에 따라 Disabled 여부 결정
  397. fDisabledChk();
  398. }
  399. function fInitDasplayResult(){
  400. model.copyNode("/root", opener.root);//parent
  401. model.refresh();
  402. }
  403. function fdataValue(vTestcd,vSubcd){
  404. var nodeCount = getNodesetCount("/root/main/acptinfo/rsltlst/itemexmp");
  405. for (var i=0; i<=nodeCount;i++){
  406. // if ((model.getValue("/root/main/tempinfo/assorsltlst/itemasso["+i +"]/testcd")==vTestcd) && (model.getValue("/root/main/tempinfo/assorsltlst/itemasso["+i +"]/rsltcd")==vSubcd)){
  407. if ((model.getValue("/root/main/acptinfo/rsltlst/itemexmp["+i +"]/testcd")==vTestcd) && (model.getValue("/root/main/acptinfo/rsltlst/itemexmp["+i +"]/rsltcd")==vSubcd)){
  408. nodenumber = i;
  409. return model.getValue("/root/main/acptinfo/rsltlst/itemexmp["+i+"]/rsltnm");
  410. }
  411. }
  412. }
  413. /**
  414. ** 결과입력 grid size 늘이기/줄이기
  415. */
  416. function fSetRsltSwtSize( bLarge ){
  417. //기존상태 높이
  418. if(getUserInfo("dutplceinstcd") == "011"){
  419. var cur_height = 179;
  420. var max_height = 538 ;
  421. }else{
  422. var cur_height = 214;
  423. var max_height = 558 ;
  424. }
  425. if( bLarge == true ){
  426. cur_height = max_height ;
  427. btn_large.visible = false;
  428. btn_small.visible = true;
  429. }
  430. else {
  431. btn_large.visible = true;
  432. btn_small.visible = false;
  433. }
  434. grd_rsltlst.attribute("height") = parseInt( cur_height ) ;
  435. }
  436. function fdataValueAsso(vTestcd,vSubcd){
  437. var nodeCount = getNodesetCount("/root/main/acptinfo/rsltlst/itemassoexmp");
  438. for (var i=0; i<nodeCount;i++){
  439. if ((model.getValue("/root/main/acptinfo/rsltlst/itemassoexmp["+i +"]/testcd")==vTestcd) && (model.getValue("/root/main/acptinfo/rsltlst/itemassoexmp["+i +"]/rsltcd")==vSubcd)){
  440. nodenumber = i;
  441. return model.getValue("/root/main/acptinfo/rsltlst/itemassoexmp["+i+"]/rsltnm");
  442. }
  443. }
  444. }
  445. // 특정값에 따라 Disabled 여부 결정
  446. function fDisabledChk() {
  447. cmb_mamcncrsickpos1rght.value = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos1rght");
  448. cmb_mamcncrsickpos1left.value = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos1left");
  449. cmb_mamcncrsickpos2rght.value = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos2rght");
  450. cmb_mamcncrsickpos2left.value = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos2left");
  451. cmb_mamcncrsickpos3rght.value = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos3rght");
  452. cmb_mamcncrsickpos3left.value = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos3left");
  453. }
  454. /*사업장코드가 011(여의도성모)일 경우 크기 조정필요*/
  455. function fCtrlSize(){
  456. if(getUserInfo("dutplceinstcd") == "011"){
  457. btn_fstjudg.attribute("top") = 184 + "px";
  458. btn_judg.attribute("top") = 185 + "px";
  459. swt_judg.attribute("top") = 205 + "px";
  460. grd_rsltlst.attribute("height") = 179 + "px";
  461. }else{
  462. btn_fstjudg.attribute("top") = 219 + "px";
  463. btn_judg.attribute("top") = 220 + "px";
  464. swt_judg.attribute("top") = 240 + "px";
  465. grd_rsltlst.attribute("height") = 214 + "px";
  466. }
  467. }
  468. function fSetGridInitState(vGrdObj){
  469. if(vGrdObj == null ) return ;
  470. vGrdObj.rebuildStyle();
  471. vGrdObj.refresh();
  472. var cnt = vGrdObj.rows;
  473. for( var i = 1 ; i <= cnt ; i++){
  474. var testrslt = vGrdObj.valueMatrix(i, vGrdObj.colRef("testrsltcnts"));
  475. var low = vGrdObj.valueMatrix(i, vGrdObj.colRef("minval"));
  476. var high = vGrdObj.valueMatrix(i, vGrdObj.colRef("maxval"));
  477. // 기준치에 따른 색깔변경
  478. if("H" == vGrdObj.valueMatrix( i , vGrdObj.colRef("judgrsltcnts") ) ) {
  479. vGrdObj.cellStyle("background-color" , i , vGrdObj.colRef("judgrsltcnts") , i , vGrdObj.colRef("judgrsltcnts")) = "#ff7a85";
  480. }
  481. if("L" == vGrdObj.valueMatrix( i , vGrdObj.colRef("judgrsltcnts") ) ) {
  482. vGrdObj.cellStyle("background-color" , i , vGrdObj.colRef("judgrsltcnts") , i , vGrdObj.colRef("judgrsltcnts")) = "#ccffcc";
  483. }
  484. //결과값이 하한가와 상한가 범위를 벗어난 경우 색으로 구분(녹색:하한가보다 작은 경우, 분홍색:상한가보다 큰 경우)
  485. if(testrslt != ""){
  486. if(!isNaN(testrslt)){
  487. if(low != ""){
  488. if(eval(testrslt) < eval(low)){
  489. vGrdObj.cellStyle("background-color", i, 7) = "#ccffcc";
  490. }
  491. }
  492. if(high != ""){
  493. if(eval(testrslt) > eval(high)){
  494. vGrdObj.cellStyle("background-color", i, 7) = "#ff7a85";
  495. }
  496. }
  497. }
  498. }else{
  499. continue;
  500. }
  501. }
  502. vGrdObj.refresh();
  503. }
  504. ]]>
  505. </script>
  506. </xhtml:head>
  507. <xhtml:body>
  508. <group id="grp_rslt2" visibility="hidden" style="left:440px; top:60px; width:295px; height:245px; ">
  509. <caption id="caption1" class="tit_2" style="left:5px; top:5px; width:108px; height:14px; ">선택형결과입력</caption>
  510. <datagrid id="datagrid1" nodeset="/root/main/tempinfo/choilst/item4" allowselection="false" caption="V^코드^결과내용" colsep="^" colwidth="24, 35, 200" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" selectionmode="byrow" style="left:5px; top:23px; width:285px; height:215px; ">
  511. <col checkvalue="Y,N" ref="sel" type="checkbox" visibility="hidden"/>
  512. <col ref="rsltcd" visibility="visible"/>
  513. <col ref="rsltnm"/>
  514. </datagrid>
  515. <line id="line1" class="line_1" style="x1:5px; y1:20px; x2:290px; y2:20px; "/>
  516. <button id="button1" class="icon_plus" style="left:275px; top:4px; width:13px; height:15px; ">
  517. <caption/>
  518. <script type="javascript" ev:event="DOMActivate">
  519. <![CDATA[
  520. //fAddRsltChoi();
  521. grp_rslt2.visible = false;
  522. ]]>
  523. </script>
  524. </button>
  525. </group>
  526. <group id="grp_choi" visibility="hidden" style="left:35px; top:40px; width:295px; height:245px; ">
  527. <caption id="caption55" class="tit_2" style="left:5px; top:5px; width:108px; height:14px; ">선택형결과입력</caption>
  528. <datagrid id="grd_choilst" nodeset="/root/main/tempinfo/choilst/item3" allowselection="false" caption="V^코드^결과내용" colsep="^" colwidth="24, 14, 207" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" selectionmode="byrow" style="left:5px; top:23px; width:285px; height:215px; ">
  529. <col checkvalue="Y,N" ref="sel" type="checkbox"/>
  530. <col ref="rsltcd" visibility="hidden"/>
  531. <col ref="rsltnm"/>
  532. </datagrid>
  533. <line id="line35" class="line_1" style="x1:5px; y1:20px; x2:290px; y2:20px; "/>
  534. <button id="btn_choiclose" class="icon_plus" style="left:275px; top:4px; width:13px; height:15px; ">
  535. <caption/>
  536. <script type="javascript" ev:event="DOMActivate">
  537. <![CDATA[
  538. fAddRsltChoi();
  539. grp_choi.visible = false;
  540. ]]>
  541. </script>
  542. </button>
  543. </group>
  544. <group id="grp_textrslt" visibility="hidden" style="left:365px; top:25px; width:295px; height:300px; ">
  545. <caption id="caption58" class="tit_2" style="left:5px; top:10px; width:108px; height:13px; ">서술형결과입력</caption>
  546. <line id="line37" class="line_1" style="x1:5px; y1:25px; x2:290px; y2:25px; "/>
  547. <button id="btn_textclose" class="icon_plus" style="left:275px; top:4px; width:13px; height:15px; ">
  548. <caption/>
  549. <script type="javascript" ev:event="DOMActivate">
  550. <![CDATA[
  551. if( model.getValue("/root/main/tempinfo/rslttext/rslt_col") == window.parent.javaScript.col_rslt ) {
  552. model.setValue("/root/main/acptinfo/rsltlst/item["+ model.getValue("/root/main/tempinfo/rslttext/rslt_idx") +"]/testrsltcnts", tar_textrslt.currentText );
  553. }
  554. grp_textrslt.visible = false;
  555. ]]>
  556. </script>
  557. </button>
  558. <textarea id="tar_textrslt" ref="/root/main/tempinfo/rslttext/rsltcnts" style="left:5px; top:30px; width:285px; height:265px; "/>
  559. <script type="javascript" ev:event="DOMFocusOut">
  560. <![CDATA[
  561. // grp_textrslt.visible = false;
  562. ]]>
  563. </script>
  564. <output id="opt_rsltidx" ref="/root/main/tempinfo/rslttext/rslt_idx" class="output_fix" visibility="hidden" style="left:130px; top:5px; width:36px; height:19px; "/>
  565. <output id="opt_rsltcol" ref="/root/main/tempinfo/rslttext/rslt_col" class="output_fix" visibility="hidden" style="left:175px; top:5px; width:36px; height:19px; "/>
  566. <button id="btn_rsltclose" class="btn2_letter2" style="left:246px; top:4px; width:42px; height:19px; ">
  567. <caption>취소</caption>
  568. <script type="javascript" ev:event="DOMActivate">
  569. <![CDATA[
  570. grp_textrslt.visible = false;
  571. ]]>
  572. </script>
  573. </button>
  574. <button id="btn_rsltsave" class="btn2_letter2" style="left:201px; top:4px; width:42px; height:19px; ">
  575. <caption>저장</caption>
  576. <script type="javascript" ev:event="DOMActivate">
  577. <![CDATA[
  578. if( model.getValue("/root/main/tempinfo/rslttext/rslt_col") == window.parent.javascript.col_rslt ) {
  579. var idx = model.getValue("/root/main/tempinfo/rslttext/rslt_idx");
  580. if( idx < 0) return ;
  581. model.setValue("/root/main/acptinfo/rsltlst/item["+ idx +"]/testrsltcnts", tar_textrslt.currentText );
  582. if( grd_rsltlst.rowStatus(idx) == 0 ) {
  583. grd_rsltlst.rowStatus(idx) = 2;
  584. }
  585. }
  586. grp_textrslt.visible = false;
  587. ]]>
  588. </script>
  589. </button>
  590. </group>
  591. <switch id="swt_judg" style="left:5px; top:205px; width:764px; height:328px; border-color:#c7a3cf; border-style:solid; ">
  592. <case id="case_first" selected="true" style="left:0px; top:0px; width:762px; height:321px; ">
  593. <caption id="caption11" class="cell_2" style="left:5px; top:266px; width:130px; height:49px; text-align:center; vertical-align:middle; ">판정구분</caption>
  594. <input id="ipt_judgdd" ref="/root/main/acptinfo/judginfo/mamcncrjudg/judgdd" class="input_essential" disabled="true" inputtype="date" style="left:138px; top:8px; width:97px; height:19px; "/>
  595. <line id="line31" class="line_1" style="x1:5px; y1:1px; x2:755px; y2:1px; "/>
  596. <line id="line25" class="line_2" style="x1:5px; y1:29px; x2:755px; y2:29px; "/>
  597. <select1 id="cmb_mamcncjudgdrid" ref="/root/main/acptinfo/judginfo/mamcncrjudg/judgdrid" class="combo" appearance="minimal" style="left:515px; top:8px; width:84px; height:19px; ">
  598. <choices>
  599. <itemset nodeset="/root/init/baseinfo/drlst/itemdr">
  600. <label ref="drnm"/>
  601. <value ref="drid"/>
  602. </itemset>
  603. </choices>
  604. </select1>
  605. <caption id="caption36" class="cell_2" style="left:382px; top:6px; width:130px; height:23px; text-align:center; vertical-align:middle; ">판정의</caption>
  606. <caption id="caption37" class="cell_2" style="left:5px; top:6px; width:130px; height:23px; text-align:center; vertical-align:middle; ">판정일자</caption>
  607. <line id="line12" class="line_3" style="x1:5px; y1:316px; x2:755px; y2:316px; "/>
  608. <caption id="caption4" class="cell_2" style="left:5px; top:32px; width:130px; height:23px; text-align:center; vertical-align:middle; ">유방실질분포량</caption>
  609. <line id="line2" class="line_2" style="x1:5px; y1:55px; x2:755px; y2:55px; "/>
  610. <caption id="caption2" class="cell_2" style="left:5px; top:58px; width:130px; height:23px; text-align:center; vertical-align:middle; ">판독소견1</caption>
  611. <line id="line3" class="line_2" style="x1:5px; y1:81px; x2:755px; y2:81px; "/>
  612. <caption id="caption5" class="cell_1" style="left:138px; top:110px; width:50px; height:23px; text-align:center; vertical-align:middle; ">왼쪽</caption>
  613. <caption id="caption6" class="cell_2" style="left:5px; top:84px; width:130px; height:49px; text-align:center; vertical-align:middle; ">병변위치</caption>
  614. <caption id="caption8" class="cell_1" style="left:138px; top:84px; width:50px; height:23px; text-align:center; vertical-align:middle; ">오른쪽</caption>
  615. <line id="line4" class="line_2" style="x1:5px; y1:133px; x2:755px; y2:133px; "/>
  616. <caption id="caption9" class="cell_2" style="left:5px; top:136px; width:130px; height:23px; text-align:center; vertical-align:middle; ">판독소견3</caption>
  617. <caption id="caption10" class="cell_1" style="left:138px; top:188px; width:50px; height:23px; text-align:center; vertical-align:middle; ">왼쪽</caption>
  618. <caption id="caption12" class="cell_2" style="left:5px; top:162px; width:130px; height:49px; text-align:center; vertical-align:middle; ">병변위치</caption>
  619. <line id="line5" class="line_2" style="x1:7px; y1:211px; x2:757px; y2:211px; "/>
  620. <caption id="caption13" class="cell_1" style="left:138px; top:162px; width:50px; height:23px; text-align:center; vertical-align:middle; ">오른쪽</caption>
  621. <caption id="caption14" class="cell_2" style="left:5px; top:214px; width:130px; height:49px; text-align:center; vertical-align:middle; ">판정구분</caption>
  622. <line id="line6" class="line_2" style="x1:5px; y1:263px; x2:755px; y2:263px; "/>
  623. <caption id="caption3" class="cell_2" style="left:382px; top:58px; width:130px; height:23px; text-align:center; vertical-align:middle; ">판독소견2</caption>
  624. <caption id="caption15" class="cell_1" style="left:515px; top:110px; width:50px; height:23px; text-align:center; vertical-align:middle; ">왼쪽</caption>
  625. <caption id="caption16" class="cell_2" style="left:382px; top:84px; width:130px; height:49px; text-align:center; vertical-align:middle; ">병변위치</caption>
  626. <caption id="caption17" class="cell_1" style="left:515px; top:84px; width:50px; height:23px; text-align:center; vertical-align:middle; ">오른쪽</caption>
  627. <caption id="caption18" class="cell_2" style="left:382px; top:136px; width:130px; height:75px; text-align:center; vertical-align:middle; ">판독소견직접기입</caption>
  628. <line id="line7" class="line_2" style="x1:138px; y1:107px; x2:377px; y2:107px; "/>
  629. <line id="line8" class="line_2" style="x1:515px; y1:107px; x2:755px; y2:107px; "/>
  630. <line id="line9" class="line_2" style="x1:138px; y1:185px; x2:377px; y2:185px; "/>
  631. <line id="line10" class="line_2" style="x1:5px; y1:159px; x2:377px; y2:159px; "/>
  632. <textarea id="textarea1" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrreadcmt4" style="left:515px; top:140px; width:240px; height:67px; "/>
  633. <select1 id="rdo_mamcncrdtbtqty" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrdtbtqty" appearance="full" cols="5" overflow="visible" style="left:138px; top:33px; width:617px; height:20px; border-style:none; ">
  634. <choices>
  635. <itemset nodeset="/root/init/judginfo/mamcncrdtbtqtylst/G058">
  636. <label ref="cdnm"/>
  637. <value ref="cdid"/>
  638. </itemset>
  639. </choices>
  640. </select1>
  641. <select1 id="cmb_mamcncrreadcmt1" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrreadcmt1" class="combo" appearance="minimal" style="left:138px; top:60px; width:237px; height:19px; ">
  642. <choices>
  643. <itemset nodeset="/root/init/judginfo/mamcncrreadcmtlst/G059">
  644. <label ref="cdnm"/>
  645. <value ref="cdid"/>
  646. </itemset>
  647. </choices>
  648. </select1>
  649. <select1 id="cmb_mamcncrreadcmt2" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrreadcmt2" class="combo" appearance="minimal" style="left:515px; top:60px; width:237px; height:19px; ">
  650. <choices>
  651. <itemset nodeset="/root/init/judginfo/mamcncrreadcmtlst/G059">
  652. <label ref="cdnm"/>
  653. <value ref="cdid"/>
  654. </itemset>
  655. </choices>
  656. </select1>
  657. <select1 id="cmb_mamcncrsickpos1rght" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos1rght" class="combo" appearance="minimal" style="left:190px; top:86px; width:90px; height:19px; ">
  658. <choices>
  659. <itemset nodeset="/root/init/judginfo/mamcncrsickposlst/G060">
  660. <label ref="cdnm"/>
  661. <value ref="cdid"/>
  662. </itemset>
  663. </choices>
  664. <script type="javascript" ev:event="xforms-value-changed">
  665. <![CDATA[
  666. var mamcncrsickpos1rght = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos1rght");
  667. if (mamcncrsickpos1rght == "07") {
  668. ipt_mamcncrsickpos1rghtrem.disabled = false;
  669. } else {
  670. ipt_mamcncrsickpos1rghtrem.disabled = true;
  671. }
  672. ]]>
  673. </script>
  674. </select1>
  675. <input id="ipt_mamcncrsickpos1rghtrem" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos1rghtrem" style="left:285px; top:86px; width:90px; height:19px; "/>
  676. <select1 id="cmb_mamcncrsickpos2rght" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos2rght" class="combo" appearance="minimal" style="left:568px; top:86px; width:90px; height:19px; ">
  677. <choices>
  678. <itemset nodeset="/root/init/judginfo/mamcncrsickposlst/G060">
  679. <label ref="cdnm"/>
  680. <value ref="cdid"/>
  681. </itemset>
  682. </choices>
  683. <script type="javascript" ev:event="xforms-value-changed">
  684. <![CDATA[
  685. var mamcncrsickpos2rght = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos2rght");
  686. if (mamcncrsickpos2rght == "07") {
  687. ipt_mamcncrsickpos2rghtrem.disabled = false;
  688. } else {
  689. ipt_mamcncrsickpos2rghtrem.disabled = true;
  690. }
  691. ]]>
  692. </script>
  693. </select1>
  694. <input id="ipt_mamcncrsickpos2rghtrem" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos2rghtrem" style="left:662px; top:86px; width:90px; height:19px; "/>
  695. <select1 id="cmb_mamcncrsickpos1left" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos1left" class="combo" appearance="minimal" style="left:190px; top:112px; width:90px; height:19px; ">
  696. <choices>
  697. <itemset nodeset="/root/init/judginfo/mamcncrsickposlst/G060">
  698. <label ref="cdnm"/>
  699. <value ref="cdid"/>
  700. </itemset>
  701. </choices>
  702. <script type="javascript" ev:event="xforms-value-changed">
  703. <![CDATA[
  704. var mamcncrsickpos1left = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos1left");
  705. if (mamcncrsickpos1left == "07") {
  706. ipt_mamcncrsickpos1leftrem.disabled = false;
  707. } else {
  708. ipt_mamcncrsickpos1leftrem.disabled = true;
  709. }
  710. ]]>
  711. </script>
  712. </select1>
  713. <input id="ipt_mamcncrsickpos1leftrem" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos1leftrem" style="left:285px; top:112px; width:90px; height:19px; "/>
  714. <select1 id="cmb_mamcncrsickpos2left" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos2left" class="combo" appearance="minimal" style="left:568px; top:112px; width:90px; height:19px; ">
  715. <choices>
  716. <itemset nodeset="/root/init/judginfo/mamcncrsickposlst/G060">
  717. <label ref="cdnm"/>
  718. <value ref="cdid"/>
  719. </itemset>
  720. </choices>
  721. <script type="javascript" ev:event="xforms-value-changed">
  722. <![CDATA[
  723. var mamcncrsickpos2left = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos2left");
  724. if (mamcncrsickpos2left == "07") {
  725. ipt_mamcncrsickpos2leftrem.disabled = false;
  726. } else {
  727. ipt_mamcncrsickpos2leftrem.disabled = true;
  728. }
  729. ]]>
  730. </script>
  731. </select1>
  732. <input id="ipt_mamcncrsickpos2leftrem" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos2leftrem" style="left:662px; top:112px; width:90px; height:19px; "/>
  733. <select1 id="cmb_mamcncrreadcmt3" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrreadcmt3" class="combo" appearance="minimal" style="left:138px; top:137px; width:237px; height:19px; ">
  734. <choices>
  735. <itemset nodeset="/root/init/judginfo/mamcncrreadcmtlst/G059">
  736. <label ref="cdnm"/>
  737. <value ref="cdid"/>
  738. </itemset>
  739. </choices>
  740. </select1>
  741. <select1 id="cmb_mamcncrsickpos3rght" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos3rght" class="combo" appearance="minimal" style="left:190px; top:164px; width:90px; height:19px; ">
  742. <choices>
  743. <itemset nodeset="/root/init/judginfo/mamcncrsickposlst/G060">
  744. <label ref="cdnm"/>
  745. <value ref="cdid"/>
  746. </itemset>
  747. </choices>
  748. <script type="javascript" ev:event="xforms-value-changed">
  749. <![CDATA[
  750. var mamcncrsickpos3rght = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos3rght");
  751. if (mamcncrsickpos3rght == "07") {
  752. ipt_mamcncrsickpos3rghtrem.disabled = false;
  753. } else {
  754. ipt_mamcncrsickpos3rghtrem.disabled = true;
  755. }
  756. ]]>
  757. </script>
  758. </select1>
  759. <input id="ipt_mamcncrsickpos3rghtrem" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos3rghtrem" style="left:285px; top:164px; width:90px; height:19px; "/>
  760. <select1 id="cmb_mamcncrsickpos3left" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos3left" class="combo" appearance="minimal" style="left:190px; top:190px; width:90px; height:19px; ">
  761. <choices>
  762. <itemset nodeset="/root/init/judginfo/mamcncrsickposlst/G060">
  763. <label ref="cdnm"/>
  764. <value ref="cdid"/>
  765. </itemset>
  766. </choices>
  767. <script type="javascript" ev:event="xforms-value-changed">
  768. <![CDATA[
  769. var mamcncrsickpos3left = model.getValue("/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos3left");
  770. if (mamcncrsickpos3left == "07") {
  771. ipt_mamcncrsickpos3leftrem.disabled = false;
  772. } else {
  773. ipt_mamcncrsickpos3leftrem.disabled = true;
  774. }
  775. ]]>
  776. </script>
  777. </select1>
  778. <input id="ipt_mamcncrsickpos3leftrem" ref="/root/main/acptinfo/judginfo/mamcncrjudg/mamcncrsickpos3leftrem" style="left:285px; top:190px; width:90px; height:19px; "/>
  779. <bool id="bol_oldmamcncrpatyn" checkvalue="Y,N" ref="/root/main/acptinfo/judginfo/mamcncrjudg/oldmamcncrpatyn" style="left:137px; top:243px; width:15px; height:15px; border-style:none; "/>
  780. <select1 id="rdo_mamcncrjudgflag" ref="/root/main/acptinfo/judginfo/mamcncrjudg/judgflag" appearance="full" cols="5" overflow="visible" style="left:137px; top:220px; width:618px; height:20px; border-style:none; ">
  781. <choices>
  782. <itemset nodeset="/root/init/judginfo/judgflaglst/G061">
  783. <label ref="cdnm"/>
  784. <value ref="cdid"/>
  785. </itemset>
  786. </choices>
  787. </select1>
  788. <caption id="caption39" style="left:155px; top:242px; width:130px; height:20px; ">기존 유방암 환자여부</caption>
  789. <textarea id="txt_judgexamcnts" ref="/root/main/acptinfo/judginfo/mamcncrjudg/judgexamcnts" style="left:138px; top:266px; width:617px; height:49px; "/>
  790. <button id="btn_momjudge" class="btn2_letter4" style="left:40px; top:280px; width:64px; height:19px; ">
  791. <caption>권고사항</caption>
  792. <script type="javascript" ev:event="DOMActivate">
  793. <![CDATA[
  794. fGetJudgExmpCnts(txt_judgexamcnts,"G015");
  795. ]]>
  796. </script>
  797. </button>
  798. </case>
  799. </switch>
  800. <button id="btn_judg" class="btn5_letter4" style="left:705px; top:185px; width:64px; height:19px; ">
  801. <caption>판정저장</caption>
  802. <script type="javascript" ev:event="DOMActivate">
  803. <![CDATA[
  804. if ( messageBox("판정내역을 ", "Q002") == 6 ) {
  805. fInitSaveData();
  806. fSaveJudg(true);
  807. //fSaveRsltInfo("J");
  808. }
  809. ]]>
  810. </script>
  811. </button>
  812. <button id="btn_fstjudg" class="btn_sw" group="tab" selected="true" style="left:5px; top:184px; width:215px; height:22px; ">
  813. <caption>유방촬영, 판정 및 권고</caption>
  814. <toggle case="case_first" ev:event="onclick"/>
  815. </button>
  816. <datagrid id="grd_rsltlst" nodeset="/root/main/acptinfo/rsltlst/item" allowselection="false" caption="처방일자^실시처방&#xA;유일번호^처방번호^검사코드^명칭^연계결과^결과^공단연계^단위^종류^비고^판정코드^판정값^LIS판정^Low^High" colsep="^" colwidth="70, 69, 63, 74, 105, 71, 136, 76, 58, 43, 67, 80, 65, 60, 42, 42" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" selectionmode="byrow" tooltip="true" style="left:5px; top:1px; width:764px; height:179px; ">
  817. <col ref="prcpdd" visibility="hidden"/>
  818. <col ref="execprcpuniqno" visibility="hidden"/>
  819. <col ref="prcpno" visibility="hidden"/>
  820. <col ref="testcd"/>
  821. <col ref="testnm"/>
  822. <col ref="outtestrsltcnts"/>
  823. <col ref="testrsltcnts" type="input"/>
  824. <col ref="assorsltcnts" type="input"/>
  825. <col ref="rsltunit"/>
  826. <col disabled="true" ref="rsltflag" type="combo">
  827. <choices>
  828. <itemset nodeset="/root/init/baseinfo/rslttypelst/A0066">
  829. <label ref="cdnm"/>
  830. <value ref="cdid"/>
  831. </itemset>
  832. </choices>
  833. </col>
  834. <col class="gridinput" ref="remcnts" type="input" visibility="hidden"/>
  835. <col ref="judgcd" visibility="hidden"/>
  836. <col ref="judgrsltcnts" visibility="visible"/>
  837. <col ref="judgmark" visibility="hidden"/>
  838. <col ref="minval"/>
  839. <col ref="maxval"/>
  840. <script type="javascript" ev:event="onendedit">
  841. <![CDATA[
  842. if(getUserInfo("dutplceinstcd") == "011"){
  843. if (event.keyCode == 13 ){
  844. grp_asso.visible = false;
  845. if(grd_assorsltlst.rows != 1){
  846. for(var i=grd_assorsltlst.rows; i>=grd_assorsltlst.fixedRows; i--){
  847. grd_assorsltlst.deleteRow(i);
  848. }
  849. }
  850. if (grd_rsltlst.col == window.parent.javascript.col_rslt ) {
  851. //선택형검사결과의 결과컬럼
  852. if ((grd_rsltlst.valueMatrix(grd_rsltlst.row,grd_rsltlst.colRef("rsltflag"))=="O")||(grd_rsltlst.valueMatrix(grd_rsltlst.row,grd_rsltlst.colRef("rsltflag"))=="T")){
  853. var vtestcd = grd_rsltlst.valueMatrix(grd_rsltlst.row , grd_rsltlst.colRef("testcd"));
  854. var vsubcd = grd_rsltlst.valueMatrix(grd_rsltlst.row , grd_rsltlst.colRef("testrsltcnts"));
  855. var cdata = fdataValue(vtestcd,vsubcd);
  856. if (cdata!=null){
  857. grd_rsltlst.valueMatrix(grd_rsltlst.row, grd_rsltlst.colRef("assorsltcnts")) = cdata; //grd_rsltlst.valueMatrix(grd_rsltlst.row, grd_rsltlst.colRef("testrsltcnts"));
  858. //grd_rsltlst.valueMatrix(grd_rsltlst.row, grd_rsltlst.colRef("testrsltcnts")) = cdata;
  859. }
  860. }
  861. if (grd_rsltlst.valueMatrix(grd_rsltlst.row,grd_rsltlst.colRef("rsltflag"))=="N"){
  862. var maxval = eval(grd_rsltlst.valueMatrix(grd_rsltlst.row , grd_rsltlst.colRef("maxval")));
  863. var minval = eval(grd_rsltlst.valueMatrix(grd_rsltlst.row , grd_rsltlst.colRef("minval")));
  864. var testrsltcnts = eval(grd_rsltlst.valueMatrix(grd_rsltlst.row , grd_rsltlst.colRef("testrsltcnts")));
  865. if(maxval < testrsltcnts){
  866. grd_rsltlst.valueMatrix(grd_rsltlst.row , grd_rsltlst.colRef("judgrsltcnts")) = "H";
  867. } else
  868. if(minval > testrsltcnts){
  869. grd_rsltlst.valueMatrix(grd_rsltlst.row , grd_rsltlst.colRef("judgrsltcnts")) = "L";
  870. } else {
  871. grd_rsltlst.valueMatrix(grd_rsltlst.row , grd_rsltlst.colRef("judgrsltcnts")) = "";
  872. }
  873. }
  874. window.parent.javascript.fCalcRslt(grd_rsltlst.colRef("testrsltcnts"));
  875. window.parent.javascript.fSetJudgStat(grd_rsltlst.colRef("testrsltcnts"));
  876. }
  877. else if(grd_rsltlst.col == window.parent.javaScript.col_assorslt ) {
  878. if (grd_rsltlst.valueMatrix(grd_rsltlst.row,grd_rsltlst.colRef("rsltflag"))=="O"){
  879. //선택형검사결과의 공단결과
  880. var vtestcd = grd_rsltlst.valueMatrix(grd_rsltlst.row , grd_rsltlst.colRef("testcd"));
  881. var vsubcd = grd_rsltlst.valueMatrix(grd_rsltlst.row , grd_rsltlst.colRef("assorsltcnts"));
  882. var cdata = fdataValueAsso(vtestcd,vsubcd);
  883. if(cdata!=null){
  884. grd_rsltlst.valueMatrix(grd_rsltlst.row, grd_rsltlst.colRef("judgcd")) = model.getValue("/root/main/tempinfo/assorsltlst/itemasso["+nodenumber+"]/judgexmpcd");
  885. grd_rsltlst.valueMatrix(grd_rsltlst.row, grd_rsltlst.colRef("judgrsltcnts")) = model.getValue("/root/main/tempinfo/assorsltlst/itemasso["+nodenumber+"]/judgexmpcnts");
  886. //grd_rsltlst.valueMatrix(grd_rsltlst.row, grd_rsltlst.colRef("testrsltcnts")) = cdata;
  887. grd_rsltlst.valueMatrix(grd_rsltlst.row, grd_rsltlst.colRef("assorsltcnts")) = cdata;
  888. }
  889. }
  890. //window.parent.javascript.fSetAssoRslt(grd_rsltlst.labelMatrix(grd_rsltlst.row, window.parent.javaScript.col_assorslt ) );
  891. /*검사결과 자동계산*/
  892. window.parent.javascript.fCalcRslt(grd_rsltlst.colRef("assorsltcnts"));
  893. //window.parent.javascript.fSetJudgStat(grd_rsltlst.colRef("assorsltcnts"));
  894. }
  895. grd_rsltlst.row = grd_rsltlst.row +1;
  896. }
  897. }
  898. ]]>
  899. </script>
  900. <script type="javascript" ev:event="onstartedit">
  901. <![CDATA[
  902. if(getUserInfo("dutplceinstcd") == "011"){
  903. if (grd_rsltlst.valueMatrix(grd_rsltlst.row,grd_rsltlst.colRef("rsltflag"))=="O" && grd_rsltlst.col == grd_rsltlst.colRef("assorsltcnts")){
  904. var testcd = grd_rsltlst.valueMatrix(grd_rsltlst.row, grd_rsltlst.colRef("testcd"));
  905. model.removeNodeset("/root/main/tempinfo/assorsltlst/itemasso");
  906. grd_assorsltlst.rebuild();
  907. var nodeCount = getNodesetCount("/root/main/acptinfo/rsltlst/itemassoexmp");
  908. for (var i=0; i<=nodeCount;i++){
  909. if (model.getValue("/root/main/acptinfo/rsltlst/itemassoexmp["+ i +"]/testcd") == testcd){
  910. grd_assorsltlst.addRow();
  911. grd_assorsltlst.valueMatrix(grd_assorsltlst.row, grd_assorsltlst.colRef("rsltcd")) = model.getValue("/root/main/acptinfo/rsltlst/itemassoexmp["+i+"]/rsltcd");
  912. grd_assorsltlst.valueMatrix(grd_assorsltlst.row, grd_assorsltlst.colRef("rsltnm")) = model.getValue("/root/main/acptinfo/rsltlst/itemassoexmp["+i+"]/rsltnm");
  913. }
  914. }
  915. grp_asso.visible = true;
  916. model.refresh();
  917. }
  918. }
  919. ]]>
  920. </script>
  921. </datagrid>
  922. <button id="btn_small" class="icon_top" style="left:5px; top:1px; width:26px; height:19px; ">
  923. <caption/>
  924. <script type="javascript" ev:event="DOMActivate">
  925. <![CDATA[
  926. fSetRsltSwtSize(false);
  927. ]]>
  928. </script>
  929. </button>
  930. <button id="btn_large" class="icon_bottom" style="left:5px; top:1px; width:26px; height:19px; ">
  931. <caption/>
  932. <script type="javascript" ev:event="DOMActivate">
  933. <![CDATA[
  934. fSetRsltSwtSize(true);
  935. ]]>
  936. </script>
  937. </button>
  938. <group id="grp_asso" visibility="hidden" style="left:80px; top:55px; width:275px; height:245px; ">
  939. <caption id="caption57" class="tit_2" style="left:5px; top:5px; width:108px; height:14px; ">공단결과입력</caption>
  940. <datagrid id="grd_assorsltlst" nodeset="/root/main/tempinfo/assorsltlst/itemasso" allowselection="false" caption="코드^결과내용" colsep="^" colwidth="36, 185" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" selectionmode="byrow" style="left:5px; top:23px; width:265px; height:215px; ">
  941. <col ref="rsltcd"/>
  942. <col ref="rsltnm"/>
  943. <script type="javascript" ev:event="ondblclick">
  944. <![CDATA[
  945. //그리드의 셀 이외의 곳을 클릭하면 종료한다.
  946. if(!eval(grd_assorsltlst.iscell(event.target))) return false;
  947. // 그리드의 헤더부분을 클릭하면 종료한다.
  948. if(eval(grd_assorsltlst.row) < eval(grd_assorsltlst.fixedRows)) return false;
  949. var idx = grd_assorsltlst.row;
  950. if( idx < 1) return ;
  951. grd_rsltlst.valueMatrix(grd_rsltlst.row, grd_rsltlst.colRef("assorsltcnts")) = model.getValue("/root/main/tempinfo/assorsltlst/itemasso[" + idx + "]/rsltnm" );
  952. grd_rsltlst.valueMatrix(grd_rsltlst.row, grd_rsltlst.colRef("assorsltcd")) = model.getValue("/root/main/tempinfo/assorsltlst/itemasso[" + idx + "]/rsltcd" );
  953. grd_rsltlst.rowStatus(grd_rsltlst.row) = 2;
  954. var nextRow = grd_rsltlst.row + 1
  955. if(grd_rsltlst.colType(grd_rsltlst.col) == "input" && nextRow < grd_rsltlst.rows) {
  956. grd_rsltlst.row = nextRow;
  957. grd_rsltlst.editCell();
  958. }
  959. if(grd_rsltlst.valueMatrix(nextRow, grd_rsltlst.colRef("rsltflag")) != "O"){
  960. grp_asso.visible = false;
  961. }else{
  962. grp_asso.visible = true;
  963. }
  964. ]]>
  965. </script>
  966. </datagrid>
  967. <line id="line19" class="line_1" style="x1:5px; y1:20px; x2:270px; y2:20px; "/>
  968. <button id="btn_assoclose" class="icon_plus" style="left:255px; top:4px; width:13px; height:15px; ">
  969. <caption/>
  970. <script type="javascript" ev:event="DOMActivate">
  971. <![CDATA[
  972. grp_asso.visible = false;
  973. ]]>
  974. </script>
  975. </button>
  976. </group>
  977. </xhtml:body>
  978. </xhtml:html>